/**
 * Author(s): xuming.Wong <xuming.Wong@gmail.com>
 */
#ifndef __TERRAIN_BRUSH_WIDGET_H__
#define __TERRAIN_BRUSH_WIDGET_H__

#include <QtCore/QUrl>
#include <QtCore/QFileInfo>
#include <QtGui/QListWidget>
#include <QtGui/QMouseEvent>
#include <QtGui/QMessageBox>

namespace PQBuilder
{
	class TerrainBrushControl
		: public QListWidget
	{
		Q_OBJECT
	public:
		static const int GRID_SIZE_X = 52;
		static const int GRID_SIZE_Y= 64;
		static const int ICON_SIZE=48;
	public:
		TerrainBrushControl(QWidget* parent);
	protected:
		void dragEnterEvent(QDragEnterEvent *evt);
		void dropEvent(QDropEvent *evt);
		void dragLeaveEvent(QDragLeaveEvent *evt);
		void dragMoveEvent(QDragMoveEvent *evt);
	public slots:
		void OnItemClicked(QListWidgetItem* item);
	private:
		void loadIcons();
	};
}

#endif
